export type OrderPageResult = PageResult<OrderPageVO[]>;

/**
 * 订单查询参数
 */
export interface OrderQuery extends PageQuery {
  page?: number;
  limit?: number;
  sout_trade_no?: number;
  smobile?: number;
  start_callNo?: number;
  end_callNo?: number;
  printerType?: any;
  ids?: any;
  pay_time?: number;
  scity_id?: number;
  smenu_id?: number;
  sprovince_id?: number;
  uid?: string;
  sstatus?: any;
  stype?: any;
  shop_id?: number;
  deliver_time?: number;
  checkAll?: boolean;
}

export interface OrderPrinterVo {
  items?: any;
  total_order?: number;
  total_product?: number;
}

/**
 * 分页对象
 */
export interface OrderPageVO {
  id?: number;
  name?: string;
  sort?: number;
  status?: number;
  total_price?: number;
  refund_price?: number;
  out_trade_no?: string;
  current_status: number;
  remark?: string;
  createTime?: Date;
  updateTime?: Date;
}

/**
 * 退款参数
 */
export interface OrderRefundVo {
  id?: number;
  type?: number; // 0：全额退款 1：部分退款
  price?: number; //退款金额
  reason?: string; //部分退款理由
  out_trade_no?: number;
}

/**
 * 统计参数
 */
export interface OrderStatusStatVo {
  status?: number;
  title?: string;
  amount?: number; // 0：全额退款 1：部分退款
}

/**
 * 订单对象
 */
export interface OrderForm {
  id?: number;
  sort?: number;
  status?: number;
  current_status?: number;
  products?: any;
  address?: any;
  out_trade_no?: number;
  shop_type?: number;
  fact_price?: number;
  total_price?: number;
  refund_price?: number;
  total_product_price?: number;
  bag_price?: number;
  coupon_price?: number;
  express_price?: number;
  buyer_remark?: string;
  create_time?: string;
  pay_time?: string;
  accept_time?: string; //接单时间
  deliver_time?: string; //分拣时间
  menu_title?: string;
  reason?: string;
  menu?: any;
  shop?: any;
  cancel_time?: string;
  refund_time?: string;
}

/**
 * 退款对象
 */
export interface OrderRefundForm {
  id?: number;
  refund_price?: number; //退款金额
  refund_note?: string; //退款备注
}

export interface PrinterTaskPageVo {
  id?: number;
  amount?: number;
  printer_amount?: number;
  title?: string;
  status?: number;
  shop_title?: string;
  printer_title?: string;
  create_time?: string;
}

export interface PrinterTaskForm {
  id?: number;
  shop_title?: string;
  status?: number;
}


/**
 * 订单查询参数
 */
export interface PrinterTaskQuery extends PageQuery {
  page?: number;
  limit?: number;
  keywords?: string;
}
